package com.liang.lingdong.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.liang.lingdong.model.user.User;
import com.baomidou.mybatisplus.extension.service.IService;
import com.liang.lingdong.model.user.dto.ForgetPasswordDto;
import com.liang.lingdong.model.user.dto.QueryUserListDto;
import com.liang.lingdong.model.user.dto.UpdatePasswordDto;
import com.liang.lingdong.model.user.vo.UserVo;

/**
* @author liang
* @description 针对表【user(用户表)】的数据库操作Service
* @createDate 2024-11-09 18:35:19
*/
public interface UserService extends IService<User> {

    /**
     * 分页查询用户列表
     * @param queryUserListDto 查询参数
     * @return 结果
     */
    IPage<UserVo> queryUserPage(QueryUserListDto queryUserListDto);

    /**
     * 用户授权 修改状态
     * @param businessId 用户id
     * @return 结果
     */
    boolean authUser(Long businessId);

    /**
     * 获取用户信息
     * @param businessId 用户id
     * @return 结果
     */
    UserVo getUserInfo(Long businessId);

    /**
     * 修改密码
     * @param updatePasswordDto 修改密码参数
     * @return 结果
     */
    boolean updatePassword(UpdatePasswordDto updatePasswordDto);

    /**
     * 忘记密码
     * @param forgetPasswordDto 忘记密码参数
     * @return 结果
     */
    boolean forgetPassword(ForgetPasswordDto forgetPasswordDto);
}
